package map;

import java.util.Hashtable;
import java.util.Scanner;

public class VideoShop {
	
	public static void main(String[] args) {
		
		// 비디오 저장소
		Hashtable videoStorage = new Hashtable();
		
		Scanner sc = new Scanner(System.in);
		
		System.out.println("***** 비디오샵 관리 프로그램 *****");
		System.out.println();
		System.out.println();
		
		while (true) {
			System.out.println("===== 메뉴를 선택하세요 =====");
			System.out.println("1. 비디오 등록");
			System.out.println("2. 비디오 검색");
			System.out.println("3. 전체 비디오 목록");
			System.out.println("4. 비디오 삭제");
			System.out.println("0. 종료");
			System.out.println("=========================");
			System.out.print("메뉴: ");
			
			System.out.print("메뉴선택: ");
			
			String menu = sc.nextLine();
			
			if (menu.equals("1")) {
				System.out.print("제목: ");
				String title = sc.nextLine();
				System.out.print("장르: ");
				String genre = sc.nextLine();
				System.out.print("감독: ");
				String director = sc.nextLine();
				
				VideoTitle t = new VideoTitle();
				t.setTitle(title);
				t.setGenre(genre);
				t.setDirector(director);
				
				videoStorage.put(title, t);
			}
			else if (menu.equals("2")) {
				System.out.print("검색할 비디오의 제목: ");
				String title = sc.nextLine();
				
				VideoTitle t = (VideoTitle) videoStorage.get(title);
				if (t != null) {
					System.out.println("조회된 비디오 정보 >>>");
					System.out.println("제목: " + t.getTitle());
					System.out.println("장르: " + t.getGenre());
					System.out.println("감독: " + t.getDirector());
				} else {
					System.out.println("검색하신 비디오가 없습니다.");
				}
			}
			else if (menu.equals("3")) {
				// 전체 비디오 목록 출력
				System.out.println("=== 등록된 전체 비디오 목록 ===");
			}
			else if (menu.equals("4")) {
				System.out.print("삭제할 비디오 제목: ");
				String title = sc.nextLine();
				VideoTitle t = (VideoTitle) videoStorage.remove(title);
				System.out.println(">>> " + t.getTitle()
						+ " / " + t.getGenre()
						+ " / " + t.getDirector()
						+ " <<< 비디오를 삭제했습니다.");
			}
			else if (menu.equals("0")) {
				// 3번을 입력했을 때
				System.out.print("정말 종료하시겠습니까? (y/n): ");
				String confirm = sc.nextLine();
				if (confirm.equalsIgnoreCase("y")) {
					break;
				}
			}
			else {
				// 1, 2, 3, 4 이외의 문자를 입력했을 때
				System.out.println("메뉴를 잘못 선택하셨습니다. 다시 선택하세요.");
			}
			System.out.println();
		}
		
	}
	
}
